<?php
class EntradaController extends AppController
{
	var $name = 'Entrada';
	var $uses = array('Usuario','Bitacora','Organizacion');
	var $helpers = array('Html','Ajax','Javascript','Cargar');
	var $layout =  "ajax";

   
	public function index() 
	{


	// echo $this->con_clave('DEMO');
		$this->iniciar_sistema();
		if($this->navegador())$this->layout="index_entrada";
      		else $this->layout="navegador";
        $usuario_id=$this->Session->read('usuario_id');
	
 	$users = $this->Session->read('usuario_id'); 

		$this->set( 'css_for_layout', 'estilo_sistema'); 

      
	if($usuario_id)
        {
        	$qry="update sv_usuarios set conectado=0 where id=$usuario_id";
            $this->Usuario->query($qry);
        }
	

		$this->Session->delete('usuario_id');
		$this->Session->delete('sesion_id');
		$this->Session->delete('nombre_usuario');
		$this->Session->delete('username');
		$this->Session->delete('tema');
		$this->Session->delete('Autenticado');
		$this->Session->delete('organizacion');
		$this->Session->delete('perfil');

		$this->Session->destroy('usuario_id');
		$this->Session->destroy('sesion_id');
		$this->Session->destroy('nombre_usuario');
		$this->Session->destroy('username');
		$this->Session->destroy('tema');
		$this->Session->destroy('Autenticado');
		$this->Session->destroy('organizacion');
		$this->Session->destroy('perfil');


		if(!empty($this->data))
		{
			if(!empty($this->data['usuario']) && !empty($this->data['clave']))
			{
				$usuario=$this->mayuscula($this->data['usuario']);
				$contrasena=$this->con_clave($this->data['clave']);
				$countUsuario=$this->Usuario->findCount("UPPER(Usuario.usuario)='".$usuario."' AND Usuario.clave='".$contrasena."' and Usuario.estado='1'");
                if($countUsuario!=0)
                {
          //    		$conectado=$this->Usuario->findCount("UPPER(Usuario.usuario)='".$usuario."' AND Usuario.clave='".$contrasena."' and Usuario.conectado='0'");
       //         if($conectado!=0)
        //            {
				$datosUsuario=$this->Usuario->find("UPPER(Usuario.usuario)='".$usuario."' AND Usuario.clave='".$contrasena."' and Usuario.estado='1'");
				$id_usuario = $datosUsuario['Usuario']['id'];
				$nombre_css = 'estilo_sistema';
				$funcio_nombre = $datosUsuario['Usuario']['nombre'].' '.$datosUsuario['Usuario']['apellido'];
				$organizacion = $datosUsuario['Usuario']['organizacion_id'];
				$perfil = $datosUsuario['Usuario']['perfil_id'];

				$this->Session->write('usuario_id',$id_usuario);
				//$this->Session->write('sesion_id',$id_usuario."_".$this->Session->id());
				$this->Session->write('sesion_id',$this->Session->id());
				$this->Session->write('nombre_usuario',$funcio_nombre);
				$this->Session->write('username',$usuario);
				$this->Session->write('tema',$nombre_css);
				$this->Session->write('Autenticado',true);
				$this->Session->write('organizacion',$organizacion);
				$this->Session->write('perfil',$perfil);


				$this->data=null;
				$this->data['Usuario']['id']=$datosUsuario['Usuario']['id'];
				$this->data['Usuario']['conectado']='0';
				$this->data['Usuario']['session']=$this->Session->id();
				$this->Usuario->save($this->data);			
					

 			if ($this->Usuario->save($this->data))
 			{
				$id_=$this->Usuario->id;
				$this->data['Bitacora']['usuario_id']=$id_usuario;
				$this->data['Bitacora']['fecha']=$this->f_actual();
				$this->data['Bitacora']['hora']=date('h:i:s:a');
				$this->data['Bitacora']['accion']="Inicio_session";
				$this->data['Bitacora']['modelo']='Usuario';
				$this->data['Bitacora']['accion_id']= $id_;
			  $this->Bitacora->save($this->data);
		  }



				$this->redirect('/SV');
        //           	}
		//		else
			//	{
			//                $this->set('error_entrada',true);					
			///		$this->set('msj',"$usuario ya esta conectado");
      //              }

$this->set('msj','* * * A C C E S O * * *');
               	}
				else
				{
					$this->set('error_entrada',true);
					$this->set('msj','Usuario o Password Incorrectos');
				}
			}
			else
			{
				$this->set('error_entrada',true);
				$this->set('msj','Campos sin llenar, por favor verifique.');
			}
		}
		else
		{
			$this->set('msj','* * * A C C E S O * * *');
		}
	//	echo "<script>evaluarNavegador()</script>";
	}

	
	function salir()
	{
		$this->layout="index_entrada";
        $fun=$this->Session->read('usuario_id');
        if($fun)
       	{
        	$qry="update sv_usuarios set conectado=0 where id=$fun";
            $this->Usuario->query($qry);
        }
		$session = $this->Usuario->find('first',array('conditions'=>array('Usuario.estado'=>1, 'Usuario.session'=>$this->Session->id()), 'order'=>'Usuario.id'));
		/*
				$this->data=null;
				$this->data['Bitacora']['usuario_id']=$session['Usuario']['id'];
				$this->data['Bitacora']['fecha']=$this->f_actual();
				$this->data['Bitacora']['hora']=date('h:i:s:a');
				$this->data['Bitacora']['accion']="Fin_session";
				$this->data['Bitacora']['modelo']='Usuario';
				$this->data['Bitacora']['accion_id']= $session['Usuario']['id'];
			  $this->Bitacora->save($this->data);
				$this->set( 'css_for_layout', 'estilo_sistema');
*/
		$this->Session->delete('usuario_id');
		$this->Session->delete('sesion_id');
		$this->Session->delete('nombre_usuario');
		$this->Session->delete('username');
		$this->Session->delete('tema');
		$this->Session->delete('Autenticado');
		$this->Session->delete('organizacion');
		$this->Session->delete('perfil');

		$this->Session->destroy('usuario_id');
		$this->Session->destroy('sesion_id');
		$this->Session->destroy('nombre_usuario');
		$this->Session->destroy('username');
		$this->Session->destroy('tema');
		$this->Session->destroy('Autenticado');
		$this->Session->destroy('organizacion');
		$this->Session->destroy('perfil');


				$this->set('msj','* * * A C C E S O * * *');
				$this->redirect('/Entrada');
		
	}//salir
        function salir_interno()
	{
		$this->layout="index_entrada";
        $fun=$this->Session->read('usuario_id');
        if($fun)
       	{
        	$qry="update sv_usuarios set conectado=0 where id=$fun";
            $this->Usuario->query($qry);
        }
		$session = $this->Usuario->find('first',array('conditions'=>array('Usuario.estado'=>1, 'Usuario.session'=>$this->Session->id()), 'order'=>'Usuario.id'));
		/*
				$this->data=null;
				$this->data['Bitacora']['usuario_id']=$session['Usuario']['id'];
				$this->data['Bitacora']['fecha']=$this->f_actual();
				$this->data['Bitacora']['hora']=date('h:i:s:a');
				$this->data['Bitacora']['accion']="Fin_session";
				$this->data['Bitacora']['modelo']='Usuario';
				$this->data['Bitacora']['accion_id']= $session['Usuario']['id'];
			  $this->Bitacora->save($this->data);
				$this->set( 'css_for_layout', 'estilo_sistema');
                */
		$this->Session->delete('usuario_id');
		$this->Session->delete('sesion_id');
		$this->Session->delete('nombre_usuario');
		$this->Session->delete('username');
		$this->Session->delete('tema');
		$this->Session->delete('Autenticado');
		$this->Session->delete('organizacion');
		$this->Session->delete('perfil');

		$this->Session->destroy('usuario_id');
		$this->Session->destroy('sesion_id');
		$this->Session->destroy('nombre_usuario');
		$this->Session->destroy('username');
		$this->Session->destroy('tema');
		$this->Session->destroy('Autenticado');
		$this->Session->destroy('organizacion');
		$this->Session->destroy('perfil');
		$this->set('msj','* * * A C C E S O * * *');
                $this->redirect('/Entrada/logeo');
		
	}//salir
        
        public function logeo() 
	{


	// echo $this->con_clave('DEMO');
		$this->iniciar_sistema();
		if($this->navegador())$this->layout="index_entrada";
      		else $this->layout="navegador";
        $usuario_id=$this->Session->read('usuario_id');
	
 	$users = $this->Session->read('usuario_id'); 

		$this->set( 'css_for_layout', 'estilo_sistema'); 

      
	if($usuario_id)
        {
        	$qry="update sv_usuarios set conectado=0 where id=$usuario_id";
            $this->Usuario->query($qry);
        }
	

		$this->Session->delete('usuario_id');
		$this->Session->delete('sesion_id');
		$this->Session->delete('nombre_usuario');
		$this->Session->delete('username');
		$this->Session->delete('tema');
		$this->Session->delete('Autenticado');
		$this->Session->delete('organizacion');
		$this->Session->delete('perfil');

		$this->Session->destroy('usuario_id');
		$this->Session->destroy('sesion_id');
		$this->Session->destroy('nombre_usuario');
		$this->Session->destroy('username');
		$this->Session->destroy('tema');
		$this->Session->destroy('Autenticado');
		$this->Session->destroy('organizacion');
		$this->Session->destroy('perfil');


		if(!empty($this->data))
		{
			if(!empty($this->data['usuario']) && !empty($this->data['clave']))
			{
				$usuario=$this->mayuscula($this->data['usuario']);
				$contrasena=$this->con_clave($this->data['clave']);
				$countUsuario=$this->Usuario->findCount("UPPER(Usuario.usuario)='".$usuario."' AND Usuario.clave='".$contrasena."' and Usuario.estado='1'");
                if($countUsuario!=0)
                {
          //    		$conectado=$this->Usuario->findCount("UPPER(Usuario.usuario)='".$usuario."' AND Usuario.clave='".$contrasena."' and Usuario.conectado='0'");
       //         if($conectado!=0)
        //            {
				$datosUsuario=$this->Usuario->find("UPPER(Usuario.usuario)='".$usuario."' AND Usuario.clave='".$contrasena."' and Usuario.estado='1'");
				$id_usuario = $datosUsuario['Usuario']['id'];
				$nombre_css = 'estilo_sistema';
				$funcio_nombre = $datosUsuario['Usuario']['nombre'].' '.$datosUsuario['Usuario']['apellido'];
				$organizacion = $datosUsuario['Usuario']['organizacion_id'];
				$perfil = $datosUsuario['Usuario']['perfil_id'];

				$this->Session->write('usuario_id',$id_usuario);
				//$this->Session->write('sesion_id',$id_usuario."_".$this->Session->id());
				$this->Session->write('sesion_id',$this->Session->id());
				$this->Session->write('nombre_usuario',$funcio_nombre);
				$this->Session->write('username',$usuario);
				$this->Session->write('tema',$nombre_css);
				$this->Session->write('Autenticado',true);
				$this->Session->write('organizacion',$organizacion);
				$this->Session->write('perfil',$perfil);


				$this->data=null;
				$this->data['Usuario']['id']=$datosUsuario['Usuario']['id'];
				$this->data['Usuario']['conectado']='0';
				$this->data['Usuario']['session']=$this->Session->id();
				$this->Usuario->save($this->data);			
					

 			if ($this->Usuario->save($this->data))
 			{
				$id_=$this->Usuario->id;
				$this->data['Bitacora']['usuario_id']=$id_usuario;
				$this->data['Bitacora']['fecha']=$this->f_actual();
				$this->data['Bitacora']['hora']=date('h:i:s:a');
				$this->data['Bitacora']['accion']="Inicio_session";
				$this->data['Bitacora']['modelo']='Usuario';
				$this->data['Bitacora']['accion_id']= $id_;
			  $this->Bitacora->save($this->data);
		  }



				$this->redirect('/FD');
        //           	}
		//		else
			//	{
			//                $this->set('error_entrada',true);					
			///		$this->set('msj',"$usuario ya esta conectado");
      //              }

$this->set('msj','* * * A C C E S O * * *');
               	}
				else
				{
					$this->set('error_entrada',true);
					$this->set('msj','Usuario o Password Incorrectos');
				}
			}
			else
			{
				$this->set('error_entrada',true);
				$this->set('msj','Campos sin llenar, por favor verifique.');
			}
		}
		else
		{
			$this->set('msj','* * * A C C E S O * * *');
		}
	//	echo "<script>evaluarNavegador()</script>";
	}
        
        

}//class
?>
